<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<!-- DW6 -->
<head>
<!-- Copyright 2005 Macromedia, Inc. All rights reserved. -->
<title>Text</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link rel="stylesheet" href="mm_health_nutr.css" type="text/css">
<script language="javascript">
//--------------- LOCALIZEABLE GLOBALS ---------------
var d=new Date();
var monthname=new Array("January","February","March","April","May","June","July","August","September","October","November","December");
//Ensure correct for language. English is "January 1, 2004"
var TODAY = monthname[d.getMonth()] + " " + d.getDate() + ", " + d.getFullYear();
//---------------   END LOCALIZEABLE   ---------------
</script>
</head>
<body bgcolor="#F4FFE4">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
  <tr bgcolor="#D5EDB3">
    <td colspan="2" rowspan="2">&nbsp;</td>
    <td width="493" height="50" id="logo" valign="bottom" align="center" nowrap>
	Descripción del problema</td>
    <td width="103">&nbsp;</td>
  </tr>

  <tr bgcolor="#D5EDB3">
    <td height="19" id="tagline" valign="top" align="center">Grupo 15</td>
	<td width="103">&nbsp;</td>
  </tr>

  <tr>
    <td colspan="4" bgcolor="#5C743D"><img src="mm_spacer.gif" alt="" width="1" height="2" border="0"></td>
  </tr>

  <tr>
    <td colspan="4" bgcolor="#99CC66" background="mm_dashed_line.gif"><img src="mm_dashed_line.gif" alt="line decor" width="4" height="3" border="0"></td>
  </tr>

  <tr bgcolor="#99CC66">
  <td>&nbsp;</td>
  	<td colspan="3" id="dateformat" height="20"><a href="index.html">INDICE</a>&nbsp;&nbsp;::&nbsp;&nbsp;<script language="javascript">
      document.write(TODAY);	</script>	</td>
  </tr>

  <tr>
    <td colspan="4" bgcolor="#99CC66" background="mm_dashed_line.gif"><img src="mm_dashed_line.gif" alt="line decor" width="4" height="3" border="0"></td>
  </tr>

  <tr>
    <td colspan="4" bgcolor="#5C743D"><img src="mm_spacer.gif" alt="" width="1" height="2" border="0"></td>
  </tr>
 <tr>
    <td width="40">&nbsp;</td>
    <td colspan="2" valign="top">&nbsp;<br>
    &nbsp;<br>
    <table border="0" cellspacing="0" cellpadding="2" width="791">
        <tr>
          <td width="787" class="pageName">El micromundo del sistema planetario</td>
        </tr>
        <tr>
          <td class="bodyText">
			<p align="justify">Se dispone de un universo que contiene un gran 
			número de planetas, diferentes naves hostiles y una nave que debe 
			trasladarse desde un planeta origen o inicial a un planeta destino, 
			pudiendo existir varios planetas destinos. El objetivo del juego 
			consiste en descubrir el mejor camino, según la búsqueda que se 
			implemente, para que la nave realice el viaje.			</p>
			<p align="center"><img src="Universo.jpg" alt="Universo" width="540" height="326"></p>
			<p align="justify">Las naves hostiles están representadas por 
			diferentes juegos (descritos en la <a href="arquitectura.html#juegos">arquitectura</a>) y suponen una lucha 
			entre dicha nave y la nave principal, el resultado de esta lucha es 
			igual al resultado del juego que se ejecute en dicho enlace (o 
			conexión) por lo que están preestablecidos según el programador de 
			cada juego. 
			<p align="justify">Tenemos pleno conocimiento de todos los enlaces 
			entre planetas en todo momento y sus requisitos para recorrerlos, 
			por lo que resulta seguro que el camino que surja mediante el 
			algoritmo que elija el usuario será el mejor con respecto a las 
			características de dicho algoritmo.            
		  <p align="justify">A continuacion se va a descripbir la representacion que se ha utilizado para modelar el universo.          
		  <p align="justify">Un universo esta representado por una HashTable de Nodos, donde la clave es el id del nodo, y el valor es el propio nodo. La informacion contenida en el nodo es la siguiente:          
		  <ul>
		    <li>id :- numero identificadivo unico del planeta.</li>
	        <li>nombre :- Nombre asignado al nodo, este atributo es simplemente para darle mayor realismo al planeta asignando nombres a los planetas.</li>
		    <li>tipo :- es una clase que emula a un enumerado. Contiene los valores Origen, Normal y Destino, para diferenciar el tipo de nodo.</li>
		    <li>enlaces :- es una HashTable que contiene todos los enlaces. Es decir contiene una lista de posibles destinos desde ese planeta. La clave de la HashTable es el id del planeta destino y el valor es el propio enlace.</li>
		    </ul>
		  <p>Los enlaces tienen la siguiente estructura:</p>
		  <ul>
		    <li>id :- Id del planeta al que conduce dicho enlace.</li>
	        <li>juego :- Numero identificativo de un juego en caso de existir en dicho enlace.</li>
		    <li>distancia :- Valor que representa el tiempo en horas que se tarda en recorrer dicho enlace.</li>
		    </ul>
		  <p>Con esta configuracion conseguimos tener toda la informacion necesaria para la representacion del estado.</p>
		  <p align="center"><img src="UMLUniverso.jpg" alt="UML Paquete Universo" width="469" height="936"></p>
		  <p>En cuanto a los algoritmos de busqueda utilizados para resolver el problema global son:</p>
		  <ul>
		    <li>Informados
		      <ul>
		        <li>A*</li>
		        <li>Voraz</li>
		        <li>Escalada simple</li>
		        <li>Enfriamiento Simulado</li>
		        </ul>
		    La heuristica utilizada para los algoritmos de busqueda informados es la distancia hasta un planeta destino, esto lo modelamos con el propio ID del planeta, ya que cuanto mayor sea este numero, mas cerca se encuentra de un planeta destino.</li>
	        </ul>
		  <ul>
		    <li>No informados
		      <ul>
		        <li>Primero en anchura</li>
                  <li>Primero en profundidad</li>
                  <li>Profundizacion limitada</li>
                  <li>Coste uniforme</li>
                </ul>
              </li>
		    </ul>
		  <p>Estas son las opciones que se dan al usuario para encontrar una solucion al problema global, la <a href="comparativa.html">comparativa</a> de cada algoritmo se encuentra en otra seccion de la memoria.</p></td>
		</tr>
      </table>
	<td width="103">&nbsp;</td>
  </tr>

 <tr>
    <td width="40">&nbsp;</td>
    <td width="111">&nbsp;</td>
    <td width="493">&nbsp;</td>
	<td width="103">&nbsp;</td>
  </tr>
</table>
</body>
</html>
